<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="zh" xml:lang="zh" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<head>
<META http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Task Descriptor: 评审设计</title>
<meta name="uma.type" content="TaskDescriptor">
<meta name="uma.name" content="review_the_design">
<meta name="uma.presentationName" content="评审设计">
<meta name="uma.guid" content="_vT1FoEocEdqrjq4i3fchvA">
<meta name="element_type" content="TaskDescriptor">
<meta name="filetype" content="description">
<meta name="role" content="">
<link rel="StyleSheet" href="./../../css/default.css" type="text/css">
<script src="./../../scripts/ContentPageResource.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ContentPageSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ContentPageSubSection.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ActivityTreeTable.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ProcessElementPage.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/ContentPageToolbar.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/contentPage.js" type="text/javascript" language="JavaScript"></script><script src="./../../scripts/processElementData.js" type="text/javascript" language="JavaScript"></script><script type="text/javascript" language="JavaScript">
					var defaultQueryStr = '?proc={002674F9-6511-4D15-8623-B761D8C48986}&path={002674F9-6511-4D15-8623-B761D8C48986},{9C683674-97C1-4AEE-8DB0-9514AEFF698E},_vT1FoEocEdqrjq4i3fchvA';
					var backPath = './../../';
					var imgPath = './../../images/';
					var nodeInfo=null;
					contentPage.preload(imgPath, backPath, nodeInfo, defaultQueryStr, true, true, false);
				</script>
</head>
<body>
<div id="breadcrumbs"></div>
<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td valign="top">
<div id="page-guid" value="_vT1FoEocEdqrjq4i3fchvA"></div>
<table border="0" cellspacing="0" cellpadding="0" width="100%">
<tr>
<td class="pageTitle" nowrap="true">Task Descriptor: 评审设计</td><td width="100%">
<div align="right" id="contentPageToolbar"></div>
</td><td width="100%" class="expandCollapseLink" align="right"><a name="mainIndex" href="./../../index.htm"></a><script language="JavaScript" type="text/javascript" src="./../../scripts/treebrowser.js"></script></td>
</tr>
</table>
<table width="100%" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="pageTitleSeparator"><img src="./../../images/shim.gif" alt="" title="" height="1"></td>
</tr>
</table>
<div class="overview">
<table width="97%" border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="50"><img src="./../../images/taskdes_lg_dgm32.gif" alt="" title=""></td><td>
<table class="overviewTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td valign="top">此任务定义了如何进行设计的评审，以及如何处理评审结果。</td>
</tr>
<tr>
<td>Based on Method Task: <a href="./../../rup/tasks/review_the_design_34CB80A9.html" guid="{9574768B-7886-40C9-9938-A7E36E9B0739}">评审设计</a></td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Relationships</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row">Roles</th><td class="sectionTableCell" width="30%"><span class="sectionTableCellHeading">Main:
								</span>
<ul>
<li>
<a href="./../../rup/capabilitypatterns/rup_technical_reviewer_265ECEB1.html" guid="_WGX8oDnfEdqxANP9kNH4WA">技术评审员</a>
</li>
</ul>
</td><td class="sectionTableCell" width="30%"><span class="sectionTableCellHeading">Additional:
								</span></td><td class="sectionTableCell"><span class="sectionTableCellHeading">Assisting:
								</span></td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row">Inputs</th><td class="sectionTableCell" width="30%"><span class="sectionTableCellHeading">Mandatory:
								</span>
<ul>
<li>
<a href="./../../rup/capabilitypatterns/rup_navmap_B64138D9.html" guid="_WGqQgDnfEdqxANP9kNH4WA">导航图</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_design_model_7D6F5DFE.html" guid="_CQ7yohi2Edq_uI8xTPML6g">设计模型</a>
</li>
</ul>
</td><td class="sectionTableCell" width="30%"><span class="sectionTableCellHeading">Optional:
								</span>
<ul>
<li>
<a href="./../../rup/capabilitypatterns/rup_supplementary_specification_BA9F2DDB.html" guid="_CQ1sBxi2Edq_uI8xTPML6g">补充规范</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_analysis_model_FDB6F428.html" guid="_CQ1sEhi2Edq_uI8xTPML6g">分析模型</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_design_model_7D6F5DFE.html" guid="_CQ7yohi2Edq_uI8xTPML6g">设计模型</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_data_model_C0DF18E9.html" guid="_WGqQgTnfEdqxANP9kNH4WA">数据模型</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_project_specific_guidelines_C16839B5.html" guid="_CQ1sBRi2Edq_uI8xTPML6g">特定于项目的指南</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_user_interface_prototype_F60D4BBC.html" guid="_CQ1sAxi2Edq_uI8xTPML6g">用户界面原型</a>
</li>
<li>
<a href="./../../rup/capabilitypatterns/rup_usecase_model_48CA4BF7.html" guid="_CQ7ypBi2Edq_uI8xTPML6g">用例模型</a>
</li>
</ul>
</td><td class="sectionTableCell"><span class="sectionTableCellHeading">External:
								</span>
<ul>
<li>None</li>
</ul>
</td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row">Outputs</th><td class="sectionTableCell" colspan="3">
<ul>
<li>
<a href="./../../rup/capabilitypatterns/rup_review_record_BA9C6BB8.html" guid="_WGwXIDnfEdqxANP9kNH4WA">评审记录</a>
</li>
</ul>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Steps</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="sectionTableCell">
<div class="stepHeading"> 一般建议</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><a id="GeneralRecommendations" name="GeneralRecommendations"></a>
<div align="left">
    <table border="1" width="100%" cellspacing="0" cellpadding="4" style="border: 1px solid rgb(128,128,128)"     bordercolorlight="#808080" bordercolordark="#808080">
        <tr>
            <td width="5%">
                <b>目的</b>
            </td>
            <td width="95%">
                每次评审的一般建议。
            </td>
        </tr>
    </table><br />
</div>“同级”评审人员的人员配备概要信息与“角色：<a class="elementLink" href="./../../rup/roles/rup_software_architect_DB0BF177.html" guid="{4AC346F0-E6FC-4D2C-8410-2EDF8DDDC91D}">软件架构师</a>”相同，但更注重技术问题。领导能力、成熟性、实用性以及结果导向的重要程度相对较低，但还是很重要：评审人员可能会发现一些可能不太普遍、但威胁项目日程安排的设计缺陷。较好的做法还是及早提出关键问题（这时可以解决问题），而不是盲目按照日程安排行事，导致项目团队走上错误道路。设计评审人员需要平衡风险和成本之间的关系，对项目成功的更宽泛问题保持敏感。设计评审人员还需要成为一个有说服力的交流者，能提出并讨论敏感问题。从技术知识的立场出发，设计评审人员需要拥有作为“角色：<a class="elementLink" href="./../../rup/roles/rup_designer_BA8DE74E.html" guid="{DB21F5EF-810B-4994-B120-79FA8774FA9D}">设计人员</a>”的经验。</td>
</tr>
</table>
</div>
<div class="stepHeading"> 评审整个设计模型</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><a id="Review the Design Model as a Whole" name="Review the Design Model as a Whole"></a>
<div align="left">
    <table border="1" width="100%" cellspacing="0" cellpadding="4" style="border: 1px solid rgb(128,128,128)"     bordercolorlight="#808080" bordercolordark="#808080">
        <tr>
            <td width="5%">
                <b>目的&nbsp;</b>
            </td>
            <td width="95%">
                确保设计模型的整体结构形成得很好。<br />
                检测无法通过查看低级别元素看到的大范围质量问题。&nbsp;
            </td>
        </tr>
    </table><br />
</div>
<p>
    <br />
    <a class="elementLink" href="./../../rup/workproducts/rup_design_model_2830034D.html" guid="{8CDAEAD4-5E84-4F50-87FD-3240ED047DE7}">设计模型</a>必须进行整体评审，通过分层和职责划分来检测突出的问题。整体评审模型是为了检测更详细的评审将会忽略的大范围问题。
</p>
<p>
    在“先启”阶段和“精化”阶段早期，这种评审将注重模型的整体结构，特别强调分层和接口。应检查包和子系统依赖关系，以确保封装元素之间宽松的结合。应检查包和子系统的内容，以确保封装元素内的高度内聚性。总体而言，应检查所有元素来确保它们的职责清晰、恰当，并确保它们的名称能反映它们的职责。
</p>
<p>
    一旦开发了架构原型，就应开展更为综合的设计评审。首先应评审模型的完整性，然后更仔细地寻找缺陷。
</p></td>
</tr>
</table>
</div>
<div class="stepHeading"> 评审每个设计用例实现</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><a id="Review Each Design Use-Case Realization" name="Review Each Design Use-Case Realization"></a>
<div align="left">
    <table border="1" width="100%" cellspacing="0" cellpadding="4" style="border: 1px solid rgb(128,128,128)"     bordercolorlight="#808080" bordercolordark="#808080">
        <tr>
            <td width="5%">
                <b>目的</b>
            </td>
            <td width="95%">
                确保系统的行为（如设计用例实现中所说的）符合系统所要求的行为（如用例中所说的），即，它完整吗？<br />
                确保行为在各模型元素间分配得当，即，它正确吗？&nbsp;
            </td>
        </tr>
    </table><br />
</div>
<p>
    <br />
    一旦评审了设计模型的结构，就需要评审模型的行为。首先，通过查看设计用例实现完全覆盖了当前迭代的所有场景，确保不缺少任何行为。相关用例子流程中的所有行为都必须在已完成的<a class="elementLinkWithUserText" href="./../../rup/workproducts/rup_use_case_realization_E4F713BD.html" guid="{87EB094F-095B-4981-ACC3-319B3B298641}">设计用例实现</a>中有所描述。
</p>
<p>
    如果系统的行为是事件推动的行为，您就可能使用状态表图来描述用例的行为。在状态表图存在的情况下，则需要检验这些状态表图，以确保它们描述正确的行为，参阅<a class="elementLinkWithType" href="./../../rup/guidances/guidelines/statechart_diagram_640B5D0B.html" guid="1.4528459404144188E-304">Guideline: 状态表图</a>可了解更多详细信息。在实时系统中，当<a class="elementLinkWithType" href="./../../rup/workproducts/rup_protocol_BEB5FBE1.html" guid="{6E4F4D6F-2934-432C-9335-5537B795F67F}">Artifact: 协议</a>用于描述交互的<a class="elementLinkWithType" href="./../../rup/workproducts/rup_capsule_FC4A34FD.html" guid="{4423FCE1-FF59-4C8E-A6C4-AA4B13CB3250}">Artifact: 封装体</a>时，应对它们进行检查，查看它们是否提供正确的行为。
</p>
<p>
    接着，确保设计用例实现的行为是在实现中的模型元素之间正确分发的：确保操作得到正确使用、所有参数都已传递且返回值的类型正确。
</p></td>
</tr>
</table>
</div>
<div class="stepHeading"> 评审每个设计元素</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><a id="Review Each Design Element" name="Review Each Design Element"></a>
<div align="left">
    <table border="1" width="100%" cellspacing="0" cellpadding="4" style="border: 1px solid rgb(128,128,128)"     bordercolorlight="#808080" bordercolordark="#808080">
        <tr>
            <td width="5%">
                <b>目的&nbsp;</b>
            </td>
            <td width="95%">
                确保设计元素的内部实现执行了所要求的行为。&nbsp;
            </td>
        </tr>
    </table><br />
</div>
<p>
    对于每个被分配了行为的设计元素（例如设计类或设计子系统），都必须评审内部设计。对于<a class="elementLinkWithUserText" href="./../../rup/workproducts/rup_design_subsystem_1A8D169B.html" guid="{A3C60B25-9780-4BFA-81AF-C1AD40D8A833}">设计子系统</a>，这意味着确保在开放的<a class="elementLinkWithUserText" href="./../../rup/workproducts/rup_interface_9816B54F.html" guid="{C6938487-1DAA-4F6A-B3BC-CB99165F0680}">接口</a>中指定的行为已分配给一个或多个包含的设计元素。对于设计类，这意味着每个操作的描述都是充分定义的，这样就可以明确地实现该操作。
</p></td>
</tr>
</table>
</div>
<div class="stepHeading"> 评审设计指南</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><a id="Review Design Guidelines" name="Review Design Guidelines"></a>
<div align="left">
    <table border="1" width="100%" cellspacing="0" cellpadding="4" style="border: 1px solid rgb(128,128,128)"     bordercolorlight="#808080" bordercolordark="#808080">
        <tr>
            <td width="5%">
                <b>目的</b>
            </td>
            <td width="95%">
                确保与设计相关的项目特定指南保持最新状态，并纠正指南中存在的缺陷。&nbsp;
            </td>
        </tr>
    </table><br />
</div>
<p>
    <br />
    基于设计评审，在设计指南中查找缺陷。
</p>
<ul>
    <li>
        遵照指南了吗？如果没有，那是为什么？
    </li>
    <li>
        它们正确吗？检测到由于错误的指南而造成的系统缺陷吗？
    </li>
    <li>
        它们完整吗？如果提供指导信息，系统缺陷会减少吗？
    </li>
</ul></td>
</tr>
</table>
</div>
<div class="stepHeading"> 准备评审记录并记录缺陷</div>
<div class="stepContent">
<table class="stepTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<td><a id="Prepare Review Record and Document Defects" name="Prepare Review Record and Document Defects"></a>
<div align="left">
    <table border="1" width="100%" cellspacing="0" cellpadding="4" style="border: 1px solid rgb(128,128,128)"     bordercolorlight="#808080" bordercolordark="#808080">
        <tr>
            <td width="5%">
                <b>目的</b>
            </td>
            <td width="95%">
                记录评审结果。<br />
                确保记录已确定的缺陷。&nbsp;
            </td>
        </tr>
    </table><br />
</div>
<p>
    <br />
    每次评审会议后，会议的结果记录在<a class="elementLink" href="./../../rup/workproducts/rup_review_record_CA816ECE.html" guid="{4047B5B0-5FB7-4960-8A7E-451719D85DFF}">评审记录</a>中。此外，所有的缺陷都按照项目的变更管理流程进行记录。
</p><br />
<br /></td>
</tr>
</table>
</div>
</td>
</tr>
</table>
</div>
<div class="sectionHeading">Properties</div>
<div class="sectionContent">
<table class="sectionTable" border="0" cellspacing="0" cellpadding="0">
<tr valign="top">
<th class="sectionTableHeading" scope="row" id="property_Multiple Occurrences" abbr="Multiple Occurrences">Multiple Occurrences</th><td class="sectionTableCell" align="left" headers="property_Multiple Occurrences"><img width="20" height="15" alt="" title="" src="./../../images/indent.gif"></td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row" id="property_Event Driven" abbr="Event Driven">Event Driven</th><td class="sectionTableCell" align="left" headers="property_Event Driven"><img width="20" height="15" alt="" title="" src="./../../images/indent.gif"></td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row" id="property_Ongoing" abbr="Ongoing">Ongoing</th><td class="sectionTableCell" align="left" headers="property_Ongoing"><img width="20" height="15" alt="" title="" src="./../../images/indent.gif"></td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row" id="property_Optional" abbr="Optional">Optional</th><td class="sectionTableCell" align="left" headers="property_Optional"><img width="20" height="15" alt="" title="" src="./../../images/indent.gif"></td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row" id="property_Planned" abbr="Planned">Planned</th><td class="sectionTableCell" align="left" headers="property_Planned"><img width="20" height="15" alt="" title="" src="./../../images/indent.gif"></td>
</tr>
<tr valign="top">
<th class="sectionTableHeading" scope="row" id="property_Repeatable" abbr="Repeatable">Repeatable</th><td class="sectionTableCell" align="left" headers="property_Repeatable"><img width="20" height="15" alt="" title="" src="./../../images/indent.gif"></td>
</tr>
</table>
</div>
<table class="copyright" border="0" cellspacing="0" cellpadding="0">
<tr>
<td class="copyright">Copyright &copy; 2008 版权所有 东软集团股份有限公司&nbsp; 联系邮箱:<a href="mailto:tcoe@neusoft.com">tcoe@neusoft.com</a></td>
</tr>
</table>
</td>
</tr>
</table>
</body>
<script language="JavaScript" type="text/javascript">
					contentPage.onload();
					contentPage.processPage.fixDescriptorLinks();
				</script>
</html>
